package cn.kgc.mapper;


import cn.kgc.pojo.HotelOrder;
import cn.kgc.pojo.User;
import cn.kgc.vo.HotelOrderWithLinkUserVo;
import cn.kgc.vo.PersonalOrderInfoVo;
import cn.kgc.vo.PersonalOrderRoomInfoVo;
import org.apache.ibatis.annotations.Param;
import tk.mybatis.mapper.common.Mapper;

import java.util.Date;
import java.util.List;

public interface HotelOrderMapper extends Mapper<HotelOrder> {

    List<HotelOrder> queryOrdersByHotelOrder(HotelOrder hotelOrder);

    PersonalOrderInfoVo getPersonalOrderInfo(@Param("orderId") Long orderId);

    PersonalOrderRoomInfoVo getPersonalOrderRoomInfo(@Param("orderId") Long orderId);
    HotelOrderWithLinkUserVo getHotelOrderWithLinkUser(@Param("orderId") Long orderId);
    int cancelOrderByCreationDate();
    int updateOrderStatusByCheckoutDate();
    Integer countOfOrderByStatus(@Param("checkInDate") Date checkInDate,@Param("checkOutDate") Date checkOutDate,@Param("roomId") Long roomId);
}